;=============================================================================
; Copyright (c) 2006. Marvell International Ltd.
; 
; INF for Windows 2K, Windows XP, Windows server 2003 and Windows Vista
;
;============================================================================= 

[Version]
signature= "$Windows NT$"
Class=SCSIAdapter
ClassGUID={4D36E97B-E325-11CE-BFC1-08002BE10318}
CatalogFile=mv64xx.cat
Provider=%Marvell%
DriverVer=09/16/2009,3.1.0.2406.

[DestinationDirs] 
mv64xx.Files.amd64_12 = 12 
CoInstaller_CopyFiles = 11

[SourceDisksNames.amd64]
0=%Desc_amd640%

[SourceDisksFiles.amd64]
mv64xx.sys=0,,
mvcoinst.dll=0,,
mv64xxmm.sys=0,,

[ControlFlags]
ExcludeFromSelect=*

[Manufacturer] 
%Marvell%=Marvell,ntamd64

[Marvell.ntamd64]
%mv64xxDesc%=mv64xx_Inst,PCI\VEN_11AB&DEV_6440
%mv64xxDesc%=mv64xx_Inst,PCI\VEN_11AB&DEV_6485

;[NODRV]
;CopyFiles=MoveNODRV

;[MoveNODRV]

;[NODRV.Services]
;
; this is blank to just allow the install to succeed
;
;AddService = , %SPSVCINST_ASSOCSERVICE%   ; null service install

[mv64xx_Inst] 
CopyFiles = mv64xx.Files.amd64_12 
CopyINF = mvnodrv.inf,
AddReg = mv64xx_Registry_Update,


;  ******** Change disk time out value from default 10s to 60s ********
[mv64xx_Registry_Update]
HKLM,SYSTEM\CurrentControlSet\Services\Disk,TimeOutValue,0x00010001,0x3C

[mv64xx_Inst.Services] 
AddService = mv64xx,0x00000002,mv64xx_Service_Instamd64, mv64xx_EventLog_Inst 

[mv64xx_Service_Instamd64] 
ServiceType = %SERVICE_KERNEL_DRIVER% 
StartType = %SERVICE_BOOT_START% 
ErrorControl = %SERVICE_ERROR_NORMAL% 
ServiceBinary = %12%\mv64xx.sys 
LoadOrderGroup = "SCSI Miniport"
AddReg = pnpsafe_pci_addreg
AddReg = bus_type_raid_addreg


[mv64xx_Inst.CoInstallers]
AddReg = mv64xx_Inst.CoInstallers_AddReg    
CopyFiles=CoInstaller_CopyFiles

[CoInstaller_CopyFiles]
mvcoinst.dll

[mv64xx_Inst.CoInstallers_AddReg]
HKR,,EnumPropPages32,,"mvcoinst.dll,ESATAPortPropPageProvider"

; ******** Uninstall section ********
[DefaultUninstall]
DelFiles = mv64xx.DelFiles

[DefaultUninstall.Services]
DelService = mv64xx

[mv64xx.DelFiles]
mv64xx.sys,,,
;  **********************************

[mv64xx.Files.amd64_12] 
mv64xx.sys
mv64xxmm.sys

[mv64xx_EventLog_Inst] 
AddReg = mv64xx_EventLog_Inst.AddReg 
 
[mv64xx_EventLog_Inst.AddReg] 
HKR,,EventMessageFile,%REG_EXPAND_SZ%,"%%SystemRoot%%\System32\IoLogMsg.dll;%%SystemRoot%%\System32\Drivers\mv64xx.sys" 
HKR,,TypesSupported,%REG_DWORD%,7

[pnpsafe_pci_addreg] 
HKR, Parameters\PnpInterface, 5, 0x00010001, 0x00000001 
HKR, "Parameters\Device", "NumberOfRequests", 0x00010001, 0x000000FF
HKR, "Parameters\Device", "MaximumSGList", 0x00010001, 0x000000FF

[bus_type_raid_addreg]
HKR, "Parameters", "BusType", 0x00010001, 0x00000008

[Strings] 

;  *******Localizable Strings******* 
Marvell= "Marvell Inc." 
Desc_amd640= "Marvell 64xx/63xx SAS Controller Driver" 
mv64xxDesc= "Marvell 64xx/63xx SAS Controller" 

;  *******Non Localizable Strings******* 

SERVICE_BOOT_START = 0x0 
SERVICE_SYSTEM_START = 0x1 
SERVICE_AUTO_START = 0x2 
SERVICE_DEMAND_START = 0x3 
SERVICE_DISABLED = 0x4 

SERVICE_KERNEL_DRIVER = 0x1 
SERVICE_ERROR_IGNORE = 0x0 
SERVICE_ERROR_NORMAL = 0x1 
SERVICE_ERROR_SEVERE = 0x2 
SERVICE_ERROR_CRITICAL = 0x3 

REG_EXPAND_SZ = 0x00020000 
REG_DWORD = 0x00010001 

SPSVCINST_ASSOCSERVICE=0x00000002
